<%--
  User: Albert
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>include动态包含</title>
</head>
<body>

    <%--
        include动态包含：
            格式：
                <jsp:include page="要包含的页面路径"></jsp:include>
            特点：
                1.动态包含相当于方法的调用
                2.动态包含会生成多个源码文件
                3.可以定义同名变量
                4.效率高，耦合度低
            注：
                当动态包含不传参数时，include双标签之间不能有任何内容，包括换行和空格

            使用动态包含传递参数：
                <jsp:include page="要包含的页面路径">
                    <jsp:param name="参数名" value="参数值"/>
                </jsp:include>
                注：name属性不支持表达式，value属性支持表达式

                获取参数：
                    request.getParameter(name); 通过指定参数名获取参数值
    --%>

    <jsp:include page="04-header.jsp"></jsp:include>
    <h2>主体内容</h2>
    <jsp:include page="04-footer.jsp"></jsp:include>

    <%-- 动态包含传递参数 --%>
    <%
        String str = "Hello, welcome to WangYuanStudio!"; // 随便写的
        String headerURL = "04-header.jsp"; // 头部页面地址
        String footerURL = "04-footer.jsp"; // 尾部页面地址
    %>
    <jsp:include page="<%=headerURL%>"></jsp:include>
    <h2>主体内容</h2>
    <jsp:include page="<%=footerURL%>">
        <jsp:param name="uname" value="albert"/>
        <jsp:param name="msg" value="<%=str%>"/>
    </jsp:include>

</body>
</html>